package com.github.freewu.mvp.mvpInterface;

import android.support.annotation.LayoutRes;
import android.view.View;

import com.github.freewu.mvp.presenter.Presenter;
import com.github.freewu.mvp.view.StatusView;

/**
 * 视图初始化接口
 * Created by 杨哲 on 2016/4/21 0021.
 */
public interface ViewInit {
    /**
     * 得到布局文件
     * @return 布局文件
     */
    public
    @LayoutRes
    int getLayout();

    /**
     * 初始化视图
     */
     void initView(View mView);

    /**
     * 初始化数据
     */
     void initData();

    /**
     * 得到加载视图
     * @return
     */
     StatusView getStatusView();

    /**
     * 重新加载页面被点击的回调
     */
    void OnReloadViewClick(View v);

    /**
     * 数据错误页面被点击的回调
     */
    void OnErrorViewClick(View v);

    /**
     * 增加presenter到View
     * @param presenter
     */
    void addPresenter(Presenter presenter);
}
